﻿using Mathmall.Administration.common;
using Mathmall.Administration.Models;
using Mathmall.Administration.Vo;

namespace Mathmall.Administration.Service
{
    public interface IBrandService
    {
        /// <summary>
        /// 保存品牌信息
        /// </summary>
        /// <param name="brandVo"></param>
        /// <returns></returns>
        Task<int> AddBrand(BrandVo brandVo);

        /// <summary>
        /// 根据BrandId查询品牌信息
        /// </summary>
        /// <param name="brandId"></param>
        /// <returns></returns>
        Task<BrandVo?> QuerySingleByBrandId(int brandId);

        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="pageNumber"></param>
        /// <param name="pageSize"></param>
        /// <param name="condition">模糊查询条件</param>
        /// <returns></returns>
        Task<PaginatedList<BrandVo>?> PaginatedQuery(int pageNumber, int pageSize, string condition);

        /// <summary>
        /// 更新品牌信息
        /// </summary>
        /// <param name="brandVo"></param>
        Task<int> UpdateBrand(BrandVo brandVo);

        /// <summary>
        /// 删除品牌
        /// </summary>
        /// <param name="brandIds"></param>
        /// <returns></returns>
        Task<int> DeleteBrand(List<int> brandIds);
    }
}